<?php
require_once 'BaseController.php';

/**
 * 沿線･駅検索コントローラ<br />
 *
 * @package apamanshop
 * @author  SS笹川
 * @copyright コピーライト(要確認)
 */
class Search_EnsenekisearchController extends Search_BaseController
{

	/**
	* 沿線選択ページ表示のメインアクション
	*
	* 1. パラメータの取得
	* 2. パラメータの変換
	* 3. 沿線データの作成
	* 4. 表示用データに変換
	* 5. 表示
	*
	* @access public
	* @return void
	*/

	public function indexAction()
	{
		$this->setMainTemplate('cms_search.tpl');
		/*
		 * 基本情報設定
		 */
		if (Apm_Config_Search::RENEW_2012) {
			$this->_display_path = APPLICATION_PATH . '/modules/search/views/scripts/search_new.tpl';
			$this->_newTemplate = true;
			$this->_import_seo_search = true;
			// テンプレート変更
			$this->_todohuken_helper = $this->getApmHelper('seltodohuken_new.tpl');
			$this->_ensen_helper     = $this->getApmHelper('selensen_new.tpl');
			$this->_eki_helper       = $this->getApmHelper('seleki_new.tpl');
			// JavaScript
			$this->addMetaJs('/common_new/js/import.js');
			// CSS
			$this->addMetaCss('/common_new/css/sub02.css',array('type' => 'text/css','media' => 'all'));
		} else {
			$this->_display_path = APPLICATION_PATH . '/modules/search/views/scripts/search.tpl';
			//CSSの定義（デザイン）
			$this->addMetaCss('/css/search/search.css',array('type' => 'text/css','media' => 'all'));
			$this->addMetaCss('/css/shop/shop.css',array('type' => 'text/css','media' => 'all'));
			//JavaSriptの定義（アプリ）
			$this->addMetaJs('/app/js/shop/search.js');
		}

    	// グローバルナビから遷移してきた場合
		if ($this->isGlobalNavi())
		{
//			Apm_Util_GlobalNavi_Common::transitionJudge(Apm_Config_Search::SRHKBN_ENSENEKI);
			$this->_params = Apm_Util_GlobalNavi_Common::transitionJudge(Apm_Config_Search::SRHKBN_ENSENEKI);
			// パラメータの補足
			Apm_Bukkenurl::convertSearchParam($this->_params);
			// canonical
			$this->addMetaCanonical($this->_baseurl . 'station/');
		}

		// 検索区分
		$this->setSearchKbn(Apm_Config_Search::SRHKBN_ENSENEKI, "ensenekisearch");

		/*
		 * モデルオブジェクト生成
		 */
		$this->_model_ensen = new Search_Model_Selensen();
		$this->_model_eki = new Search_Model_Seleki();

		/*
		 * 検索画面振り分け
		 */
		// 都道府県検索
		// (初期呼び出し時)
		//  都道府県コードがない場合
		if (! $this->_model_common->checkvalue($this->_params, "PrefCd"))
		{
			// 疑似的に静的URLと看做す
			$this->_static_pattern = 'station';
			$this->_static_category = '0';
			$this->_static_params = $this->_params;
			$this->_static_params['Pattern']  = $this->_static_pattern;
			$this->_static_params['Category'] = $this->_static_category;

			// 都道府県用の静的URLを生成
			$staticUrl = Apm_Bukkenurl::generatePrefStaticUrl($this->_params, Apm_Config_Search::SRHKBN_ENSENEKI);
			//$this->_data['area_static_url'] = $staticUrl['AREA'];
			$this->_data['pref_static_url'] = $staticUrl['PREF'];
			//$this->_data['pref_static_url'] = Apm_Bukkenurl::generatePrefStaticUrl($this->_params, Apm_Config_Search::SRHKBN_ENSENEKI);
			
			if ($this->_newTemplate) {
				// H1のタイトル
				$this->_data['h1_title'] = '沿線・駅から探す';
				// ブロックタイトル
				$this->_data['block_title'] = '*沿線・駅から賃貸情報を探す';
				// リード文
				$this->_data['block_text'] = Apm_Config_Search::SEOSTR_ENSENEKI.'{&nbsp;の}'.Apm_Config_Search::ALIAS_TYPE.'情報をエリアから探したい方はこちらから。';
				// JavaScript
				$this->addMetaJs('/app/js/search/Seltodohuken.js');
			} else {
				// H1のタイトル
				$this->_data['h1_title'] = '沿線・駅から探す';
				// ブロックタイトル
				$this->_data['block_title'] = '*沿線・駅 賃貸情報をエリアから探す';
				// リード文
				$this->_data['block_text'] = Apm_Config_Search::SEOSTR_ENSENEKI.'{の}'.Apm_Config_Search::ALIAS_TYPE.'情報をエリアから探したい方はこちらから。';
				// JavaScript
				$this->addMetaJs('/app/js/search/Seltodohuken.js');
			}
			// 画面遷移区分
			$this->_data['next_search'] = "ENSEN";

			$this->_main_helper = $this->_todohuken_helper;
		}
		// 沿線コードがない場合
		else if ( ! $this->_model_common->checkvalue($this->_params, "RailCd"))
		{

			$this->_data['selensen'] = array();
			$this->_data['selensen'] = $this->_model_ensen->getEnsenDataByMulti($this->_params);

			// 表示用データに変換
			$this->_model_ensen->convertEnsenDataByMulti($this->_data);
			// 静的URL挿入
			Apm_Bukkenurl::generateSearchStaticUrl($this->_params, $this->_data['Mapping'], Apm_Config_Search::SRHKBN_ENSENEKI);

			if ($this->_newTemplate) {
				// H1のタイトル
				$this->_data['h1_title'] = "沿線・駅から検索　&gt;&gt;　沿線を選択してください。";
				// ブロックタイトル
				$this->_data['block_title'] = '*'.Apm_Config_Search::ALIAS_PREFSTR.'の沿線一覧から探す';
				// リード文
				$this->_data['block_text'] = Apm_Config_Search::SEOSTR_PREFSTR.'{&nbsp;の}'.Apm_Config_Search::ALIAS_TYPE.'情報を沿線から探したい方はこちらから。';
				// canonical
				if (count($this->_params['PrefCd']) == 1) {
					$params = array();
					$params['Category'] = '1.5';
					$params['PrefName'] = Apm_Config_Search::$TODOUFUKEN_NAME_CODE_LIST[$this->_params['PrefCd'][0]];
					$canonical = Apm_Bukkenurl::generateUrlByParametersChiiki($params);
					if (!empty($canonical)) {
						$this->addMetaCanonical($canonical);
					}
				}
			} else {
				// H1のタイトル
				$this->_data['h1_title'] = "沿線・駅から検索　&gt;&gt;　沿線を選択してください。";
				// ブロックタイトル
				$this->_data['block_title'] = '*'.Apm_Config_Search::ALIAS_PREFSTR.'の沿線・駅一覧から探す';
				// リード文
				$this->_data['block_text'] = Apm_Config_Search::SEOSTR_PREFSTR.'{の}'.Apm_Config_Search::ALIAS_TYPE.'情報を沿線から探したい方はこちらから。';
				// JavaScript
				$this->addMetaJs('/app/js/search/Selensen.js');
			}

			$this->_main_helper = $this->_ensen_helper;
		}
		else if (! $this->_model_common->checkvalue($this->_params, "StCd"))
		{

			$this->_data['seleki'] = array();
			$this->_data['seleki'] = $this->_model_eki->getEkiData($this->_params);

			// 表示用データに変換
			$this->_model_eki->convertEkiData($this->_data);
			// 静的URL挿入
			Apm_Bukkenurl::generateSearchStaticUrl($this->_params, $this->_data['Mapping'], Apm_Config_Search::SRHKBN_ENSENEKI);
			
			if ($this->_newTemplate) {
				// H1のタイトル
				$this->_data['h1_title'] = "沿線・駅から検索　&gt;&gt;　駅を選択してください。";
				// ブロックタイトル
				$this->_data['block_title'] = '*'.Apm_Config_Search::ALIAS_ENSEN.'の駅から探す';
				// リード文
				$this->_data['block_text'] = Apm_Config_Search::ALIAS_ENSEN.'{&nbsp;の}'.Apm_Config_Search::ALIAS_TYPE.'情報を駅から探したい方はこちらから。';
			} else {
				// H1のタイトル
				$this->_data['h1_title'] = "沿線・駅から検索　&gt;&gt;　駅を選択してください。";
				// ブロックタイトル
				$this->_data['block_title'] = '*'.Apm_Config_Search::ALIAS_ENSEN.'の駅から探す';
				// リード文
				$this->_data['block_text'] = Apm_Config_Search::ALIAS_ENSEN.'{の}'.Apm_Config_Search::ALIAS_TYPE.'情報を駅から探したい方はこちらから。';
				// JavaScript
				$this->addMetaJs('/app/js/search/Seleki.js');
			}

			$this->_main_helper = $this->_eki_helper;
		}
		else
		{
			//処理なし
		}

		// モバイルAPIデータの作成
		$this->mobileApiAct($this->_data['Mapping']);

	}

}

?>
